A board of expert personas whose every decision is a pre-registered, time-anchored, reality-graded bet.
Not a chatbot that agrees with you — a board that keeps score, before the fact.
$ pip install asktheboard
Mechanism on sample data — the 60-second, no-key walkthrough below reproduces it exactly.
Filed in the open, anchored in git, resolved against a source nobody controls. No edits after the anchor — that is the whole point.
Will the June 2026 US jobs report show +150,000 nonfarm payrolls or more?
The board called yes at 56%. Anchored 2026-06-27; graded 2026-07-02 against
the BLS Employment Situation release.
Actual: +57K — below the +150K threshold. Outcome: FALSE.
(v0.2.4 briefly recorded +114K from an early wire read, stamped before the official release; corrected to the official BLS figure — outcome and every score unchanged.)
| seat | stance | P(+150k) | Brier | the call |
|---|---|---|---|---|
| researcher | affirm | 60% | 0.360 | central case clears the line; revisions shave the margin |
| strategist | affirm | 58% | 0.336 | labor market has beaten every cooling call this cycle |
| skeptic | dissent ✓ | 40% | 0.160 | 150k is the median — a coin-flip dressed as a call |
The skeptic wins round 1. The dissenter called the miss most accurately (Brier 0.160 vs board average 0.314). The git anchor means the board cannot edit its pre-registered call after the fact. Full board-minute: examples/2026-06-jobs-report.md.
Anyone can clone a “panel of AI personas” in a weekend, and a dozen have. The debate mechanic is a commodity. What it leaves out is the thing that makes advice worth trusting: a record of having been right before the outcome was knowable. That record is hard to fake — you can buy model outputs, but you can’t back-date a timestamp.
So ask-the-board records, for every decision:
The board-minute is a git-committable ADR. Your git history is the external attestation of the anchor timestamp. The accumulating, reality-graded record is the durable asset.
create → resolve → score is pure data
— no LLM, no key, no network. This is a worked example on sample
data: you supply the outcome with resolve, and the engine
computes each seat’s Brier score (lower is better). It shows the
mechanism, not a track record — the integrity comes from the
anchor timestamp your git history attests, which no demo can fabricate.
| seat | n | mean_brier | wins | losses |
|---|---|---|---|---|
| pragmatist | 1 | 0.040 | 0 | 0 |
| skeptic | 2 | 0.291 | 1 | 1 |
| strategist | 1 | 0.336 | 0 | 0 |
| researcher | 1 | 0.360 | 0 | 0 |
The skeptic’s Brier 0.160 on bet #1 (jobs report, June 2026) is a real contrarian win — dissented, turned out more right than the board. That’s the gold the aged public scoreboard is built from, once minutes resolve against reality you didn’t set.
The engine ships no provider and makes no calls of its own. You bring your own key and pay your own inference, so it costs nothing to run at any scale.
The OpenAI-compatible HTTP client is stdlib-only. Point it at OpenAI, OpenRouter, Together, or a local server.
You can’t pre-register a prediction onto a known outcome, and you can’t grade a minute before its resolution date. That’s what makes it foresight.
Role archetypes — architect, skeptic, pragmatist, researcher, operator, strategist — and named panels, so seating one is a single lookup. The skeptic sits on every panel by design.
The OSS engine is free forever and runs on your own key. If you’d rather not manage keys — or you want the aged, reality-graded public scoreboard hosted for you — a managed, capped paid tier is coming.
Email support@chu6a.dev with the subject waitlist
A one-liner on what you’d decide with it helps, but isn’t required. No spam — one note when it opens.